﻿using System;
using System.ServiceModel;

namespace OCXS.OCXSServiceLibrary.OPCXMLDA10 {

    [MessageContract(
        WrapperName = "BrowseResponse", 
        WrapperNamespace = "http://opcfoundation.org/webservices/XMLDA/1.0/", 
        IsWrapped = true)]
    public class BrowseResponse {

        [MessageBodyMember(Name = "BrowseFilter", Order = 0)]
        public OCXS.OCXSServiceLibrary.OPCXMLDA10.ReplyBase BrowseResult;

        [MessageBodyMember(Name = "Elements", Order = 1)]
        public BrowseElement[] Elements;

        [MessageBodyMember(Name = "Errors", Order = 2)]
        public OPCError[] Errors;

        [MessageBodyMember(Name = "ContinuationPoint", Order = 3)]
        public string ContinuationPoint;

        [MessageBodyMember(Name = "MoreElements", Order = 4)]
        public bool MoreElements;

        public BrowseResponse() {
        }

        public BrowseResponse(OCXS.OCXSServiceLibrary.OPCXMLDA10.ReplyBase BrowseResult, BrowseElement[] Elements, OPCError[] Errors, string ContinuationPoint, bool MoreElements) {
            this.BrowseResult = BrowseResult;
            this.Elements = Elements;
            this.Errors = Errors;
            this.ContinuationPoint = ContinuationPoint;
            this.MoreElements = MoreElements;
        }
    }
}
